#ifndef ASISTENTEXML_H
#define ASISTENTEXML_H

#include <QDomDocument>
#include "tablas_global.h"

class TABLAS_EXPORT AsistenteXml 
{
public:
    AsistenteXml();
	AsistenteXml(QDomDocument& documento);
    ~AsistenteXml();

	void nuevo(const QString& nombreTagRaiz);
    bool abrirArchivo(const QString& nombreArchivo);
	bool guardarArchivo(const QString& nombreArchivo);

    QDomElement getElementoRaiz();

    QDomElement escribirElemento(QDomElement& elementoPadre, const QString& nombreTag);
    QDomElement escribirElementoTexto(QDomElement& elementoPadre, const QString& nombreTag, const QString& texto);
    void escribirAtributo(QDomElement& elemento, const QString& nombreAtributo, const QString& valor);
    
    QList<QDomElement> leerElementos(const QDomElement& elementoPadre, const QString& nombreTag);
    QString leerElementoTexto(const QDomElement& elementoPadre, const QString& nombreTag);
    QString leerAtributo(const QDomElement& elemento, const QString& nombreAtributo);

private:
    QDomDocument documento;
    QString mensajeError;
    
};

#endif // ASISTENTEXML_H
